﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using HengTong.Model._Admin;
using WalkingTec.Mvvm.Core;

namespace HengTong.Model.Db.Other;

/// <summary>
/// 活动参与
/// </summary>
public class SysActivityParticipation : BasePoco
{
    [Required]
    [Display(Name = "活动ID", Description = "关联的活动ID", GroupName = "活动信息")]
    public Guid? ActivityId { get; set; }

    [Display(Name = "活动ID", Description = "关联的活动ID", GroupName = "活动信息")]
    public SysActivityList Activity { get; set; }

    [Required]
    [Display(Name = "参与者类型", Description = "个人/公司", GroupName = "参与者信息")]
    public ParticipantType? ParticipantType { get; set; }

    [Required]
    [Display(Name = "姓名/公司名", Description = "参与人姓名或公司名称", GroupName = "参与者信息")]
    [StringLength(128)]
    public string Name { get; set; }

    [Required]
    [Display(Name = "联系电话", Description = "联系电话", GroupName = "参与者信息")]
    [StringLength(11)]
    public string Phone { get; set; }

    [Display(Name = "详细地址", Description = "详细地址", GroupName = "参与者信息")]
    [StringLength(256)]
    public string Address { get; set; }

    [Display(Name = "活动图片", Description = "图片文件", GroupName = "图片信息")]
    public List<SysActivitImages> ActivityImages { get; set; }

    [Display(Name = "描述", Description = "描述", GroupName = "其他信息")]
    [StringLength(512)]
    public string Description { get; set; }

    
    //绑定用户，先创建微信用户，如果没有需要新增到 SysWechatUser 表中
    [Display(Name = "绑定用户", Description = "关联的系统用户对象", GroupName = "系统用户绑定")]
    public FrameworkUser User { get; set; }

    [Display(Name = "绑定用户", Description = "关联的系统用户主键", GroupName = "系统用户绑定")]
    public Guid? UserId { get; set; }
}